abstract class $SET{E} < $RO_SET{E} |
---|
**** | A set with reference semantics, that may be modified by inserting and deleting elements Usage:
_____See_class_SET{E} |
$RO_SET{_} | $STR | $CONTAINER{_} | $ELT{_} | $ELT |
SET_INCL{_} | H_SET{_} | SET{_} |
clear; |
---|
**** | Delete all elements |
copy: SAME; |
---|
**** | Return a copy of the current set. |
copy_from(s: $CONTAINER{E}); |
---|
delete(e: E); |
---|
**** | Deletes the element equal to 'e' from the set |
diff(a: $RO_SET{E}): $SET{E}; |
---|
**** | Return a set that is the difference of "self" and "a" i.e. contains all elements of self except those in "a" |
elt!: E; |
---|
**** | Yields all elements of the set in arbitrary order |
has(e:E): BOOL; |
---|
**** | Returns 'true' if 'e' is in the set. |
insert(e:E); |
---|
**** | Inserts the element 'e' into the set. Do nothing if "e" is present |
intersection(a: $RO_SET{E}): $SET{E}; |
---|
**** | Return a set that is the intersection of "self" and "a" |
sym_diff(a: $RO_SET{E}): $SET{E}; |
---|
**** | Return a set that contains all elements that are in either "self" or "a", but not in both |
to_diff(a: $SET{E}); |
---|
**** | Transform self into the difference between self and a, elements present in self but not in a |
to_intersection(a: $SET{E}); |
---|
**** | Transform self into the intersection of self and a, consisting of only those elements present in self and a |
to_sym_diff(a: $SET{E}); |
---|
**** | Transform self to contain only elements present in self or a, but not in both |
to_union(a: $SET{E}); |
---|
**** | Transform self into the union of self and a consisting of elements present in either self or a |
union(a: $RO_SET{E}): $SET{E}; |
---|
**** | Return a set that is the union of "self" and "a" |